ワールド(Scene)作成方法
本章では、ワールドの作成方法を説明します。
FDMiを利用した飛行機ギミックの導入では、以下の操作が必須となります。
サンプル例として、FDMi - Example/Scene/FDMiTempleteSceneを用意しています。こちらをコピーし、ワールド制作を開始すると、以下の設定がすでになされた状態で作業を開始できます。
概要
本章では、以下の設定を行い、FDMiを使用可能なワールドを作成します。
- FDMi stack(ワールド全体設定)
- 入力
- 大気/風
- RelativeSyncManager(同期設定)
- リスポーン位置
- 地面/空の設定
- FDMiRelativeGroundSync(地面)
- FDMiRelativeSkybox(空)
- 航空機の追加
FDMi stack(ワールド全体設定)
FDMi stackは、機体間で共通する設定を管理します。
ワールドにFDMi - example/Prefabs/FDMi stack.prefabを配置するだけで設定完了します。
入力
FDMi - inputで用いられる、指先に触れたときの入力系を配置します。
左右の人差し指に追従し、コントローラーの入力を監視します。
基本的にはFDMi stackを配置するだけで完了します。
大気/風
FDMi stack/Environment下では、大気・風のFDMi Floatを定義しています。
これは、各機体の空力算出に使用されます。
※ 今後のアップデートで仔細が変更される可能性があります。バージョンアップ時にお伝えします。
- Ground: 海抜0m地点での大気設定
- GroundPressure: 気圧
- GroundTemperature: 外気温
- Wind: 海抜0m地点での風。現在はSaccflight互換の設定にしてあります。
RelativeSyncManager(同期設定)
RelativeSyncManagerは、機体・人・地面全ての位置関係をオーバーライドし、自分・自機が常にワールドの原点付近に来るよう、毎フレーム調整します。
FDMi - sync/Prefabs/RelativeSyncManager.prefabを導入し、上部メニューFDMi/Setup FDMiを押します。
このとき、RelativeSyncManagerは以下の位置に配置してください
- Sceneの一番親(
RelativeSyncManagerに親がない状態) - ワールド座標の原点(0,0,0)
リスポーン位置
次に、ワールド・機体毎のリスポーン位置を指定します。
FDMiでは、ワールド・機内で、それぞれリスポーン位置をオーバーライドします。
RelativeSyncManager及び各機体のFDMiRelativeObjectSyncの、Respaun Pointに、各位置でのリスポーン位置を指定します。
※ 機体のRespaun Pointは、機体のRigidbodyからの相対位置で指定されます。
※ Respaun Pointを付けない場合、ワールド原点/Rigidbody(0,0,0)の位置にリスポーンします。
地面/空の設定
FDMiでは、地面・空を回転させ、ワールド座標のFloat制約を解決しています。 そのため、地面・空にそれぞれ設定が必要です。
FDMiRelativeGroundSync(地面)
地面のメッシュをある程度まとめたGameObjectを作り、FDMiRelativeGroundSyncのスクリプトを適用します。
上部メニューFDMi/Setup FDMiを押せば、自動で設定されます。
※ FDMiRelativeGroundSync配置位置に制約はありません。
※FDMiRelativeGroundSyncは、1シーンに複数個存在してかまいません。
※ FDMiRelativeGroundSyncのRepawnPoint設定は無効です。
FDMiRelativeSkybox(空)
FDMiでは、空を回転させるため、FDMi - Example/Prefabs/FDMiSkyboxを使用します。
当該オブジェクトをScene内に配置したうえで、以下の設定をします。
最後に上部メニューFDMi/Setup FDMiを押せば、自動で設定されます。
※ FDMiRelativeSkybox配置位置に制約はありません。
FDMiSkybox/uvSphereのマテリアルを、使用したいSkyboxに差し替えます。FDMiSkybox/Directional Lightの設定を調整します。Main Camera(ワールド設定用カメラ)の設定を調整します。Clear FlagsをSolid Colorにします。Clipping PlanesをFDMiSkybox/uvSphereの2倍以上のサイズに設定します。
航空機の追加
各機体の設定がなされたprefabをシーンのルート(親がない状態)に配置します。
この状態で、上部メニューFDMi/Setup FDMiを押せば、自動で設定されます。